1. Field of the Invention
The invention relates to a method of converting a packetized stream of information signals representing information arranged in separate, consecutive data packets of digital format, into a stream of information signals with time stamps, the method comprising receiving the serial stream of information signals, detecting the data packets in the serial stream of information signals while establishing a time of arrival of the data packet, and generating time stamp data related to the time of arrival for each detected data packet.
The invention also relates to a method of converting such a stream of information signals with time stamps into a packetized stream. The invention further relates to converting means for performing both methods, as well to a system for storage and retrieval or transmission of such a stream of information signals.
2. Description of the Related Art
The subject matter, as described in the opening paragraph, is known from International Patent Application WO 96/30905, corresponding to U.S. Pat. No. 5,953,483, Document (D1) in the List Of Documents. More specifically, this document discloses the recording and reproduction of an information signal comprising packets that may arrive irregularly as a function of time in the serial data stream of an MPEG information signal.
Such an MPEG information signal is used for serial transmission of a digital data stream representing a compressed digital video signal and a corresponding compressed audio signal. For instance, the draft Grand Alliance HDTV System Specification dated Feb. 22, 1994, Document (D2) in the List Of Documents, more specifically, chapters V and VI of this specification, contain a description of a transport system for transmitting a MPEG information signal for broadcasting purposes or for transmission via a cable network.
The format of an MPEG information signal has been developed by the Moving Pictures Experts Group (MPEG). This group was established to develop standards for coded representation and compression of moving pictures, audio and their combination. It operates in the framework of the Joint ISO/IEC Technical Committee. Currently produced standards are MPEG-1 (ISO 11172), MPEG-2 (ISO 13818) and MPEG-4. Industries, as well as several international bodies, have adopted these standards. The standards enable interoperability in digital video and audio applications and services.
Within an MPEG serial data stream, the video and/or audio signals may be transmitted via transport stream packets having a fixed amount of bytes (188), the first byte being a synchronization byte. A transport stream packet comprises information of only one of the video signals, or one of the audio signals or one of the data signals transmitted via the MPEG serial data stream.
Synchronization of the decoding and presentation at a receiver is important for a real time digital data delivery system. This is to ensure that a video signal is presented at the proper speed, that video and audio remain synchronized, and that the decoder can properly manage its buffers. A loss of synchronization leads to either buffer overflow or underflow at a decoder, and, as a consequence, loss of information. This is different from analog information, such as, e.g., in NTSC where information for pictures is transmitted in a synchronous manner, so that one can derive a clock directly from the picture synchronization. However, in a digital compression system, the amount of data generated for each picture is variable as dependent on the picture encoding approach and complexity. Thus, timing cannot be derived directly from the start of the picture data. There is no natural concept of synchronization pulses in a digital bit stream. Therefore, the time base at the decoder side must be locked to that of the encoder. The solution is to transmit timing information with selected transport stream packets, to serve as a reference for timing comparison at the decoder.
This is done by transmitting, at regular periods, a sample of a reference clock called program clock reference (PCR). This clock reference (PCR) indicates the expected time of completion of the reading of that timestamp from the bit stream at a decoder. The phase of a local clock running at the decoder is compared to the PCR value at the instant at which it is obtained, in order to adjust the clock rate, if necessary, to determine whether the decoding process is synchronized. A MPEG transport stream can therefore be regarded as a real-time transport stream.
With the use of a second type of time stamp, called decoding time stamp (DTS) or presentation time stamp (PTS), the exact moment, relative to the above-described locked decoder clock, is indicated where a video frame or an audio frame has to be decoded or presented, respectively.
The transport stream packets will be transported across a medium. If the delay of this medium is not equal for each transport stream packet, then it is possible to corrupt the decoding time base. An extra transmission delay between two succeeding transport stream packets that contain a PCR, will cause jitter on a decoder clock. Therefore, only a specific amount of jitter is allowed by the respective standards.
A storage or recording device can also be treated as a transmission channel with infinitesimal delay. At play back, the timing between successive transport stream packets must be in such a way reconstructed that it becomes equal to the timing between succeeding transport stream packets as they arrived at the input of the recording device during recording. Further, it can generally be said that the recording or storage of a complete MPEG information signal, comprising multiple program streams, is not well possible, because of the too high data rate of the MPEG information signal. Therefore, only one or a few of the video signals and their corresponding audio signals, corresponding to a selected program stream, will, in practice, be selected for recording. However, as a consequence, transport stream packets corresponding to a specific program stream will generally be selected on an irregular basis as a function of time.
In order to preserve the timing relation between the subsequent transport stream packets selected, the previously mentioned Document (D1) describes the measure to insert time stamps in each of the transport stream packets recorded. After selection and storage, the timing relation between the subsequent packets with reproduction can be recovered using the time stamps.
According to Document (D1), the combination of time stamps and transport stream packets is incorporated into a specific data format (D-VHS MPEG-2 STD) in which data is recorded with a magnetic playback/recording system, such as a VHS-based digital videocassette recorder. This format is not a standard MPEG format representing a real-time data stream, but allows representing a non-real-time data stream. According to the D-VHS MPEG-2 STD format, recording of signal blocks representing a fixed amount of 112 bytes is allowed. Within two signal blocks of 112 bytes each, one transport stream packet of 188 bytes can be stored together with an additional corresponding time stamp of 4 bytes. (The other 32 bytes are used for other purposes, such as, for example, synchronization, identification, and parity information). This format is only used within a VHS-based digital recorder.
In applications such as can be found in digital home networks, several video/audio and data devices may be interconnected to each other. In a digital home network, digital services may deliver digital content, such as digital video broadcast (DVB), to the home via digital networks using cable, satellite, ether or telephone. Other sources of digital content may be within the home, such as digital camcorders, still cameras and pre-recorded digital media, such as CD and DVD. A digital home network may allow this content to be transported to and between not only an already mentioned D-VHS recorder, but also between set-top boxes, personal computers, television devices, video printers, scanners and the like. An IEEE-1394 network may connect all these devices with each other.
IEEE-1394, as disclosed in xe2x80x9cHigh Performance Serial Bus P1394xe2x80x9d, draft 7.1 version 1 issued Aug. 15, 1994, IEEE standards department, Document (D3) in the List Of Documents, defines a digital interface for simultaneously transporting multiple, high speed real-time digital audio and video streams between such digital devices. The bus employing such an interface is called xe2x80x98the IEEE-1394 busxe2x80x99, but is also known as xe2x80x98Firewirexe2x80x99 (Reg. Trademark of Apple) or xe2x80x98I-Linkxe2x80x99 (Reg. Trademark of Sony). The standard has been adopted by PC, Consumer Electronic, DVB (Digital Video Broadcast) Industries.
IEEE-1394 defines a packet transport mechanism, but nothing about how to use these packets types for specific real-time data, such as, e.g., MPEG-2. IEC-61883, however, defines how specific AV-formats can be transported with a 1394-bus. IEC-61883 contains to this purpose, among other protocols, a common isochronous protocol (CIP) which is a generic method to pack real-time application data within predetermined bus time slots (isochronous transfer), into the payload field of 1394 bus packets.
However, IEEE-1394, according to the MPEG Transport Stream Protocol IEC 61883-4, is adapted to transport standard MPEG2 transport stream packets of 188 bytes only. There is no space provided within this protocol of the IEEE-1394 standard to transport non-standard MPEG packets of, for example, 192 bytes, such as obtained by adding a time stamp of 4 bytes to each transport stream packet in a non-real-time transport stream such as discussed above.
An object of the invention is therefore to overcome the above mentioned disadvantage and, more generally, to overcome the problem of adding time stamp data to data packets with a fixed size.
The method according to the invention is thereto characterized by grouping a plurality of the time stamp data of several data packets into a time stamp packet; generating a time stamp packet signal representing the time stamp packet, and transmitting the serial stream of the received information signals together with the generated time stamp packet signals such that a unique association can be established between time stamp data and a corresponding data packet.
The invention is based on the following recognition. By collecting the time stamp data of several data packets into one special time stamp packet, instead of adding each time stamp data to the corresponding data packet, the format according to which these data packets are formatted, such as, for example, MPEG, can be maintained. This has the advantage of avoiding the use of a different format, such as, for example, the D-VHS MPEG-2 STD format. Further, a transfer at a different data rate and/or storage of an MPEG information stream is obtained, as the original order and time relation of the packets can always be restored at a later instant by using the added time stamp information. Also, compatibility with devices and transmission channels, such as the IEEE-1394 bus based on standard MPEG formats, is maintained.
In a method where the data packet comprises a fixed number of N digital data units and the time stamp data comprises M digital data units with M less than N, a further advantageous method according to the invention is characterized in that the time stamp data packet comprises N digital data units.
By maintaining this size of N data units, a time stamp packet can also be regarded as a standard packet in a standardized stream of packets. The time stamp packet will fit in the reserved space according to a transmission format, or in a receiving device adapted to process packets of fixed amount of digital words. For example, no special measures have to be taken with transmission channels based on IEEE-1394. Furthermore, devices not adapted to modify the stream of packets, may handle a time stamp packet as one of the other packets and will not require modification.
It is noted that not all data units in a time stamp packet need to be used for time stamps, as data units may also serve as data stuffing units or as synchronization units.
A further advantageous method according to the invention is characterized by providing the time stamp packet with identifying information. This has the advantage that a receiving device can discriminate a time stamp packet from other, non-standard packets that might be present in a received stream of packets.
A more detailed first method according to the invention is characterized by providing time stamp data in the time stamp packet with associated information indicating the corresponding data packet. This has the advantage that, at reproduction of the real-time stream, when data is missing or not correct, still a link between a specific time stamp and a data packet might be established. Furthermore, the sequence of data packets may be changed.
An alternative second, more detailed method according to the invention is characterized by providing time stamp data in the time stamp packet in an order in accordance with an order of transmission of the corresponding data packets. In this way, the separate time stamps in a time stamp packet can be associated with corresponding data packets. For example, the n-th time stamp in a specific time stamp packet has to be associated with the n-th data packet of a group of data packets following the time stamp packet. This has the advantage that no additional identifying information has to be added.
A further advantageous method according to the invention is obtained by grouping only those time stamp data into a time stamp packet which corresponds to data packets which constitute, with the time stamp data packet, a logical block of combined data packets as employed for coding or decoding purposes. This requires less modification of the organization of a transport stream while existing handling and processing of the data stream in logical blocks is followed. Advantageous in this respect is a method according to the invention characterized in that the logical block of combined data packets corresponds to a block as employed for error coding or error correction.
If a sequence of data packets represents a coded video picture, a further advantageous method is characterized in that the first data packet of a picture corresponds with the first data packet of a logical block of pictures, such as, for example, in the case of a coded sequence of I-, P- and B-pictures in MPEG video coding. For subsequent processing, it is advantageous to coincide a start of an I-, P- or B-picture with the start of a time stamp packet.
Another advantageous method is obtained in the case that a sequence of data packets represents coded video pictures, is characterized in that the logical block of data packets is selected in accordance with a group of video pictures. Such as, for example, a Group of Pictures, denoted as GOP in MPEG video coding.
A next advantageous method according to the invention is characterized by using a time stamp packet signal for time synchronization of a receiving device. By recognizing a time stamp packet signal as a sync packet, no additional sync signals have to be added.
In a preferred method according to the invention, a synchronization signal is transmitted preceding transmission of a logical block of data packets. This enables easy recognition of the start of a logical block.
When the data packets are formatted according to an MPEG transport stream packet of N=188 bytes, an advantageous method according to the invention is obtained by grouping time stamp data into a time stamp packet of N=188 bytes. It is noted that not all bytes in a packet need be employed for data or time stamps, as a transport stream packet or a time stamp packet may comprise both a header part and a payload part.